// API 相关类型定义

import type { AxiosResponse } from 'axios'

// 通用 API 响应接口
export interface ApiResponse<T = any> {
    code: number
    message: string
    data?: T
    status: number
}

// 扩展 AxiosResponse 类型
declare module 'axios' {
    interface AxiosResponse<T = any> {
        code?: number
        message?: string
    }
}

// 分页响应接口
export interface PageResponse<T = any> {
    list: T[]
    total: number
    page: number
    size: number
}

// 列表响应接口
export interface ListResponse<T = any> extends ApiResponse<PageResponse<T>> { }

// 基础响应接口
export interface BaseResponse<T = any> extends ApiResponse<T> { }
